/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.geaSV.beans;

import com.geaSV.busquedas.buscarSolicitud;
import com.geaSV.busquedas.busquedaUsuario;
import com.geaSV.creaciones.crearOrdenServicio;
import com.geaSV.entities.PersonaE;
import com.geaSV.entities.ordenServicioE;
import com.geaSV.entities.solicitudServicioE;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;

/**
 *
 * @author GServicios
 */
@ManagedBean
@RequestScoped
public final class asignarOdenServicio {
private int idsolicitud;
private String cliente;
private String hora_atencion;
private Date fecha_realizacion;
private Date fecha_atencion;
private String observacion;
private String servicio;
private String telefono;
private String direccion;
private List<PersonaE> listaEmpleados=new ArrayList();
private List alstEmpleados=new ArrayList();
private String observacionesA;
private int idemple;

    public String getObservacionesA() {
        return observacionesA;
    }

    public void setObservacionesA(String observacionesA) {
        this.observacionesA = observacionesA;
    }

    public int getIdemple() {
        return idemple;
    }

    public void setIdemple(int idemple) {
        this.idemple = idemple;
    }


    public List<PersonaE> getListaEmpleados() {
        return listaEmpleados;
    }

    public void setListaEmpleados(List<PersonaE> listaEmpleados) {
        this.listaEmpleados = listaEmpleados;
    }

    public List getAlstEmpleados() {
        return alstEmpleados;
    }

    public void setAlstEmpleados(List alstEmpleados) {
        this.alstEmpleados = alstEmpleados;
    }

    public String getTelefono() {
        return telefono;
    }

    public void setTelefono(String telefono) {
        this.telefono = telefono;
    }

    public String getDireccion() {
        return direccion;
    }

    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }


    public int getIdsolicitud() {
        return idsolicitud;
    }

    public void setIdsolicitud(int idsolicitud) {
        this.idsolicitud = idsolicitud;
    }

    public String getCliente() {
        return cliente;
    }

    public void setCliente(String cliente) {
        this.cliente = cliente;
    }

    public String getHora_atencion() {
        return hora_atencion;
    }

    public void setHora_atencion(String hora_atencion) {
        this.hora_atencion = hora_atencion;
    }

    public Date getFecha_realizacion() {
        return fecha_realizacion;
    }

    public void setFecha_realizacion(Date fecha_realizacion) {
        this.fecha_realizacion = fecha_realizacion;
    }

    public Date getFecha_atencion() {
        return fecha_atencion;
    }

    public void setFecha_atencion(Date fecha_atencion) {
        this.fecha_atencion = fecha_atencion;
    }

    public String getObservacion() {
        return observacion;
    }

    public void setObservacion(String observacion) {
        this.observacion = observacion;
    }

    public String getServicio() {
        return servicio;
    }

    public void setServicio(String servicio) {
        this.servicio = servicio;
    }



    /**
     * Creates a new instance of asignarOdenServicio
     */
    public asignarOdenServicio() {
        try{ 
            
            busquedaUsuario bM=new busquedaUsuario();     
    this.listaEmpleados=bM.buscarDatosUsuario();
            for (Iterator<PersonaE> it = listaEmpleados.iterator(); it.hasNext();) {
                PersonaE mun = it.next();
                this.alstEmpleados.add(new SelectItem(mun.getId(),mun.getNombre1()));}
            
       FacesContext fc = FacesContext.getCurrentInstance();
        Map<String,String> params = fc.getExternalContext().getRequestParameterMap();
        this.idsolicitud=Integer.parseInt(params.get("id"));
        if(this.idsolicitud>0){
        obtenerDatos1();
        }
        
        }catch(Exception e){
            System.out.println(e.getMessage());
        }
    }
public void obtenerDatos1() throws SQLException{
 buscarSolicitud bs=new buscarSolicitud();
solicitudServicioE ss;
    System.out.println("entro con"+this.idsolicitud);
ss=bs.buscarSolicitudes(idsolicitud);
this.cliente=ss.getNomCliente();
this.direccion=ss.getDireccion();
this.fecha_atencion=ss.getFechaAtencion();
this.fecha_realizacion=ss.getFechaRealizacion();
this.hora_atencion=ss.getHoraAtencion();
this.observacion=ss.getObservacion();
this.servicio=ss.getNomServicio();
this.telefono=ss.getTelefono();
}
 public void asignar () throws SQLException{
        if(this.idemple==0){
        FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR,"NO A SELECCIONADO UN EMPLEADO", null));
        }else{
            crearOrdenServicio co=new crearOrdenServicio();
            ordenServicioE os=new ordenServicioE();
            os.setDetalles(this.observacionesA);
            os.setIdEmpleado(idemple);
            os.setId_solicitud(idsolicitud);
            String mensaje=co.crearOrdenServ(os);
            if(mensaje.contains("Error")){
             FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_ERROR,mensaje, null));
            }
            else{
             FacesContext.getCurrentInstance().addMessage
          (null, new FacesMessage(FacesMessage.SEVERITY_INFO,mensaje, null));
            }
        
        }
        
    }
}
